﻿#ifndef FINDSGFX_H
#define FINDSGFX_H

#include <QString>
#include <QDomDocument>
#include <QFile>
#include <QFileDialog>
#include <QDebug>
#include <datastruct.h>
#include <QXmlStreamReader>
#include <QUuid>
#include <QRegularExpression>

using namespace etpXmlDataStruct;
using namespace sgfxXmlDataStruct;

class findSgfx
{
public:
    findSgfx();

    void parseSdyFiles(QStringList sdyPaths, SdyContent &sdys);

    void parseEtpFile(QString etpPath, EtpXmlData &etpXmlData);

    // 递归解析XML结构的函数
    void parseXmlNode(const QDomNode& node, WidgetChildren& widgetChildren, const QMap<QString, QString> &constMap);

    void parseSgfxFile(QString sgfxPath, SGFX &sgfx, const QMap<QString, QString> &constMap);

    void rulesRead(Rules &rules, const QString &rulesFolderPath, PropTypes &propTypes, QMap<QString, QString> &constMap, CommuParams &commuParams);

    void extensionRulesRead(ExtensionRules &eRules, const QString &rulesFolderPath);


};

#endif // FINDSGFX_H
